// 和用户相关的接口
/**
 * 账号密码登录
 * @param {String} account -账号
 * @param {String} password -密码
 * @returns promise
 */
import request from '@/utils/request'
export const userAccountLogin = ({ account, password }) => {
  return request('/login', 'post', { account, password })
}

/**
 * 获取短信登录的验证码
 * @param {String} mobile
 * @returns Promise
 */
export const userAccountLoginMsg = (mobile) => {
  return request('/login/code', 'get', { mobile })
}

/**
 * 进行手机号登录
 * @param {String} mobile-手机号
 * @param {String} code-验证码 默认123456
 * @returns Promise
 */
export const userMobileLogin = ({ mobile, code }) => {
  return request('/login/code', 'post', { mobile, code })
}

/**
 * QQ登录
 * @param {String} QQ唯一标识-unionId
 * @param {Number} 终端类型-1代表PC
 */
export const userQQLogin = (unionId, source = 1) => {
  return request('/login/social', 'post', { unionId, source })
}

/**
 * 获取QQ登录绑定时的短信验证码
 * @param {String} mobile
 */
export const userQQBindCode = (mobile) => {
  return request('/login/social/code', 'get', { mobile })
}

/**
 * 三方登录_绑定QQ号
 * @param {String} unionId-QQ唯一标识
 * @param {String} mobile-手机号
 * @param {String} code-验证码
 */
export const userQQBindLogin = (unionId, mobile, code) => {
  return request('/login/social/bind', 'post', { unionId, mobile, code })
}

/**
 * 校验用户名是否唯一
 * @param {String} account-用户名（账号）
 */
export const userAccountCheckOnly = (account) => {
  return request('/register/check', 'get', { account })
}

/**
 * 完善用户信息发送短信验证码
 * @param {String} mobile-手机号
 */
export const userQQPatchCode = (mobile) => {
  return request('/register/code', 'get', { mobile })
}

/**
 * 完善用户信息并登录
 * @param {String} unionId-QQ唯一标识符
 * @param {String} mobile-手机号
 * @param {String} password-密码
 * @param {String} account-账号
 * @param {String} code-验证码
 */
export const userQQPatchLogin = ({ unionId, mobile, password, account, code }) => {
  return request(`/login/social/${unionId}/complement`, 'post', { unionId, mobile, password, account, code })
}
